/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package model;
import controller.Conta;
import java.util.ArrayList;
import java.util.List;
import javax.swing.table.AbstractTableModel;

/**
 *
 * @author Carol
 */
public class TabelaBuscaConta extends AbstractTableModel{
    private String[] colunas = new String[]{"Numero Conta","Nome Proprietário","Tipo da Conta"};
    private List<ClienteConta> lista = new ArrayList();

    public TabelaBuscaConta(List<ClienteConta> lista){
        this.lista = lista;    
    }
    
    public TabelaBuscaConta(){
    
    }
    
    @Override
    public int getRowCount(){
        return this.lista.size();
    }

    @Override
    public int getColumnCount() {
        return this.colunas.length;
    }

    @Override
    public Object getValueAt(int rowIndex, int columnIndex){
        ClienteConta conta = lista.get(rowIndex);
        try{
            ContaDAO contaDAO = new ContaDAO();
            String tipoConta = contaDAO.buscarTipoConta(conta.getNconta());
            String nomeCli = contaDAO.buscarClienteConta(conta.getNconta());
            switch(columnIndex){
                case 0: return conta.getNconta();
                case 1: return nomeCli;
                case 2: return tipoConta;
                default: return null;                            
        }
        }catch (Exception e){
            return null;
        }     
    }
    public void setListaConta(List<ClienteConta> contas){
        this.lista = contas;
        this.fireTableDataChanged();    
    }
    public ClienteConta getConta(int linha){
        return lista.get(linha);
    }
}
